有個基本的觀念就是需要建立模型才能實現各種功能,無論是識別數據的類型、預測連續數值或是分析時間序列數據等,所以今天我打算從基礎的模型觀念開始了解。
import tensorflow as tf
class MyModule(tf.Module):
def __init__(self):
super(MyModule, self).__init__()
self.dense = tf.keras.layers.Dense(10)
def __call__(self, x):
return self.dense(x)
module = MyModule()
output = module(tf.random.normal([5, 5]))
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(64, activation='relu', input_shape=(32,)),
tf.keras.layers.Dense(10, activation='softmax')
])
x = tf.random.normal((1, 32))
output = model(x)
model = tf.keras.Sequential([
tf.keras.layers.Dense(64, activation='relu', input_shape=(32,)),
tf.keras.layers.Dense(10, activation='softmax')
])
使用 tf.keras.Model 自定義模型:
class MyModel(tf.keras.Model):
def __init__(self):
super(MyModel, self).__init__()
self.dense1 = tf.keras.layers.Dense(64, activation='relu')
self.dense2 = tf.keras.layers.Dense(10, activation='softmax')
def call(self, inputs):
x = self.dense1(inputs)
return self.dense2(x)
model = MyModel()
output = model(tf.random.normal((1, 32)))